Various forms of media sessions may be established in a communication network. For example, a media session may support conferencing (e.g., with multiple speakers or presenters), content streaming (e.g., from a single source to an audience), fax communications, application sharing, and the like. Such a session may convey media of a particular type, such as audio or video, or, alternatively, be a multimedia session that conveys multiple forms of media at the same time (e.g., a video conference with audio, etc.).
Typically, media session data is sent as User Datagram Protocol (UDP) packets. UDP packets, in contrast to Transmission Control Protocol (TCP) packets, are often well suited for media applications. In particular, UDP packets use smaller headers than TCP packets and are often processed faster than TCP packets. In addition, unlike TCP, UDP does not use a mechanism that guarantees delivery of any given packet.
As there is no mechanism to ensure delivery of any given packet during a typical UDP-based media session, loss of critical packets (e.g., packets associated with a key event, etc.) can lead to degradation of the user experience. For example, in a typical call center, Dual-Tone Multi-Frequency (DTMF) events can trigger the routing of a call from an interactive voice response (IVR) agent to one or more agents (e.g., the user dials ‘1’ to speak to an account representative). If the corresponding DTMF packets are lost, however, this could impinge on the experience of the user, as the call will not be directed properly to the appropriate agent.